#ifndef _QUEUE_H
#define _QUEUE_H

#include <stdlib.h>

typedef struct queue_node_struct {
	int first;
	int second;
	struct queue_node_struct *prev;
	struct queue_node_struct *next;
} QueueNode;

typedef struct queue_struct {
	QueueNode* head;
	QueueNode* tail;
	int size;
} Queue;

void Queue_Init(Queue *q);
void Queue_Add(Queue* q, int first, int second);
void Queue_Remove(Queue* q, int *first, int *second);

#endif